// Copyright (c) 2020, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

package com.android.tools.r8.horizontalclassmerging.policies;

import com.android.tools.r8.graph.DexEncodedField;
import com.android.tools.r8.graph.DexProgramClass;
import com.android.tools.r8.horizontalclassmerging.SingleClassPolicy;

public class NoInstanceFieldAnnotations extends SingleClassPolicy {

  @Override
  public boolean canMerge(DexProgramClass program) {
    for (DexEncodedField instanceField : program.instanceFields()) {
      if (instanceField.hasAnnotations()) {
        return false;
      }
    }
    return true;
  }

  @Override
  public String getName() {
    return "NoInstanceFieldAnnotations";
  }
}
